Smart training system

ABSTRACT

A weight training device for a smart training system is described. The device may include a handle. The device also includes a resistance member coupled to the handle and configured to resist a motion of the handle. The device also includes a sensor coupled between the handle and the resistance member and configured to collect sensor data. The sensor data may include a degree of force applied to the handle. The device also includes a communication interface configured to transmit the sensor data to a remote computing device.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Patent Application No. 63/144,764, filed on Feb. 2, 2021, which is hereby incorporated by reference in its entirety.

TECHNICAL FIELD

Aspects and implementations of the present disclosure relate to a smart training system and, in particular, to a smart weight training system with sensors.

BACKGROUND

Physical training with weight resistance is a very common and effective way to build muscle, strength, and endurance. The effectiveness of the training is based on volume lifted and force applied over a period of time. Until now, this was all calculated manually based on weight lifted and counting reps. From this the total volume lifted can be calculated and used to design programming for muscle growth, strength, endurance, and explosiveness.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments and implementations of the present disclosure will be understood more fully from the detailed description given below and from the accompanying drawings of various aspects and implementations of the disclosure, which, however, should not be taken to limit the disclosure to the specific embodiments or implementations, but are for explanation and understanding only.

FIG. 1 is a block diagram of a smart weight training system in accordance with some embodiments of the present disclosure.

FIG. 2 is process flow diagram of a method for operating a weight training system in accordance with some embodiments of the present disclosure.

FIG. 3 is a block diagram illustrating an example computer system, in accordance with some embodiments of the present disclosure.

FIG. 4 is an example of a cable machine that may be included in the smart training system in accordance with some embodiments of the present disclosure.

FIG. 5 is an example of a barbell that may be included in the smart training system in accordance with some embodiments of the present disclosure.

FIG. 6 is an example of a dumbbell that may be included in the smart training system in accordance with some embodiments of the present disclosure.

FIG. 7 is an example of a kettlebell that may be included in the smart training system in accordance with some embodiments of the present disclosure.

DETAILED DESCRIPTION

Aspects and implementations of the present disclosure are directed to a smart training system and, in particular, to a smart weight training system with sensors. Physical training with weight resistance is a very common and effective way to build muscle, strength, and endurance. The effectiveness of the training is based on volume lifted and force applied over a period of time. Such data may be calculated manually based on manually tracking the weight lifted, the number exercise sets performed, and the number of repetitions per set. From this the total volume lifted can be calculated and used to track progress and design weight lifting routines for developing muscle growth, strength, endurance, and explosiveness.

Aspects of the disclosure provide for an improved training system that streamlines the tracking of performance metrics and expands the possibilities for planning and creating successful weight lifting routines. A system in accordance with embodiments of the present disclosure includes a weight lifting device equipped with one or more sensors configured to capture various types of sensor data, such as force data and/or motion data. For example, the sensors may include a weight sensor or load cell placed in a location connecting or between the lifting/gripping area or handle of equipment and where the weight rests or may be adjusted. The sensors may also include an acceleration sensor (accelerometer) centrally placed or multiple sensors placed on outer extremities of the equipment to measure the acceleration or speed at which the equipment is being lifted. The sensors may also include a gyroscope for measuring angular velocity and rotation.

Various exercise characteristics can be computed based on the sensor data, including the number of repetitions performed, the weight lifted, the force applied by the user, the power exerted by the user, and others. For example, a number of repletion's performed may be calculated by reoccurring changes in acceleration from the accelerations sensors and/or changes in rotation from the gyroscope. Additionally, a power curve data with peak displayed could be computed using the force applied to the weight training device as determined by weight and acceleration measurements from the sensors.

In some embodiments, the sensor data may be transmitted wirelessly to a remote computing device such as a smart phone for example, which computes the exercise characteristics. In some embodiments, the weight lifting device may also include processing resources that may be configured to compute one or more exercise characteristics, which may then be transmitted to the remote computing device.

The techniques disclosed herein may be used in any type of fitness equipment, including free weights such as barbells, dumbbells, and kettlebells. The techniques may also be used in exercise machines such as cable machines. The automatic data collection eliminates the need for manual data entry of weight and repetitions during the lifting cycle, and the data collected by the sensors may be used to determine a wide variety of exercise characteristics that are not traditionally available, especially when using free weights. For example, the force exerted by the user during an exercise may be determined based on the weight and the acceleration of the weight lifting device, and the power exerted by the user during an exercise may be determined based on the force as a function of time and distance. This data can be used to inform the user if they are on track with targeted volume and power outputs to achieve set goals.

The smart training system may include components to measure parameters such as weight, speed of movement, and repetitions. This information can be transmitted via a short range communication device such as Bluetooth to an application running on a remote computing device such as a smart phone. The application can record for each set, for example, the number of repetitions, weight lifted, and power exerted (e.g., in watts). The application may also automatically record this data into a preset program for each set.

Embodiments of the present disclosure may provide advantages including that a user may not have to stop in between sets to manually document their weight and repetitions since it will be determined and recorded automatically, i.e., without human intervention. Additionally, new exercise measurements can be realized with the disclosed system, such as power exerted by the user on a free weight.

FIG. 1 is a block diagram of a smart weight training system in accordance with embodiments of the present disclosure. While various devices, interfaces, and logic with particular functionality are shown, it should be understood that the weight training system 100 can include any number of devices, components, interfaces, and logic for facilitating the functions described herein.

The weight training system 100 can incudes a computing device 102 configured to communicate with one or more weight lifting devices 104. The computing device 102 may be any data processing device, such as a desktop computer, a laptop computer, a hand-held device such as a smart phone or smart watch, and others. The computing device 102 includes a processing device 106 configured to execute computer-readable instructions for performing the routines and actions described herein. The processing device 106 may be a system on a chip, a processor core, a central processing unit (CPU), microprocessor, and Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), and others.

The computing device 102 also includes a memory 108 which is configured as a working memory for storing programming instructions and data used by the processing device 106. The memory 108 may be volatile or non-volatile memory such as random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), flash memory, or any other type of memory used by a computer system.

The computing device 102 also includes a storage device 110 may be may be local or remote persistent storage device such as a hard-disk drive, flash storage, a solid state drive, or any other type of persistent data storage. The storage device 110 may be used to store long term data and to store computer programming instructions that direct the actions of the processing device 106. Computer programming may be loaded from the storage device 110 into the memory 108 for execution by the processing device 106. As shown in FIG. 1, the computer programming stored to the storage device 110 is represented as one more programming modules. However, it will be appreciated that this is for convenience in describing features of the programming and that the computer programming may be organized with any suitable structure and any suitable division or combination of programming tasks between the modules.

The computing device 102 may also include a display 112 for displaying information and graphics to a user of the device. In some embodiments, the display 112 may be a touch sensitive display that is capable of receiving input instructions from the user through a graphical user interface, for example.

The computing device 102 may also include a communication interface 114 for communicating with other electronic devices, including the weight lifting devices 104. Each weight lifting device 104 may include a complimentary communication interface 114 for communicating with the computing device 102. The communication interface 114 may be a wired or wireless interface, such as WiFi, Bluetooth, Zigbee, Universal Serial Bus (USB), Wireless USB, and others.

The weight lifting devices 104 may be type of weight lifting device, including free weights such as barbells, dumbbells, kettlebells, medicine balls, and others. The weight lifting devices 104 may also be a component of an exercise machine such as a cable-based exercise machine.

Each of the weight lifting devices 104 includes one or more sensors 116 for sensing data related to the use of the weight lifting device 104 by the user. For example, one more of the sensors 116 may be configured to sense motion such as an accelerometer or gyroscope. Additionally, one or more of the sensors 116 may be configured to sense a force applied to the weight lifting device, such as a piezoelectric load cell or a strain gauge load cell. Example embodiments of different types of weight lifting devices and sensor arrangements are described further in relation to FIGS. 4-7.

In some implementations, some weight lifting devices 104 may include additional electronics such as a processing device 118 and a memory 120. The processing device 118 may be a microprocessor or other type of processing device for computing exercise characteristics from the raw sensor data. The memory 120 may be a volatile or non-volatile memory such as a flash memory, Read-Only Memory (ROM), Electrically-Erasable Programmable Read-Only Memory (EEPROM), and others. The memory may be used for storing data computed by the processing device 118 and also for storing information that may be set by the manufacturer such as a unique serial number of the device, a device type indicator indicating the type of weight lifting device, or a weight value indicator indicating the weight of the device. Information such as the unique serial number, the device type indicator, and the weight value indicator may be communicated to the computing device for further processing.

Various types of data may be computed using the sensor data received from the sensors 116. The information computed from the raw sensor data may be referred to herein as exercise characteristics. The computations described herein may be performed by the computing device 102 or, in some cases, by the processing device 118 of the weight lifting device 104. For example, in some embodiments, the weight lifting device 104 collects sensor data and transmits the raw sensor data to the computing device 102 for further processing. However, in some embodiments, the weight lifting device 104 may itself compute exercise characteristics from the sensor data and transmit the exercise characteristics to the computing device 102 with or without the raw sensor data. On the computing device 102, the exercise characteristics may be computed by the data generator 122 using sensor data and other information received from the weight lifting device 104.

One exercise characteristic that may be computed from the sensor data is the weight being lifted. For example, the sensors 116 may include a load cell sensor that measures the force being applied to the weight lifting device by the user. The weight being lifted would then be determined based on the force applied while the device is not in motion or while the motion is low, i.e., below a specified threshold. The motion may be determined based on data received from a motion sensor such as an accelerometer. In some embodiments, such as when the weight being lifted is non-adjustable, the weight value of the weight lifting device may be retrieved from the memory 120 and reported to the computing device 102 rather than being computed.

Another exercise characteristic that may be computed from the sensor data is the number of repetitions performed in a set of exercises. In some embodiments, the start and stop of an exercise can be indicated by the user through a user input device of the computing device 102 or the weight lifting device 104. Additionally, the start and stop of an exercise may also be detected automatically by the computing device 102 or the weight lifting device 104 based on the sensor data rather than user input. For example, the motion of the weight lifting device 104 or the force applied to the weight lifting device 104 may be analyzed to identify a pattern of repetitive motions or repetitive force contours indicative of an exercise. Each repetition may exhibit as a cycle in the motion or force data pattern which indicate changes in the direction of motion or changes in the degree of force. The number of repetitions may be determined based on the number of cycles detected between the beginning and the ending of the exercise. Additional information such as the time duration of the set or of individual repetitions may also be measured and stored.

Another exercise characteristic that may be computed from the sensor data is the force applied by the user to the weight lifting device. For example, in some embodiments, the sensors 116 may not include a force sensor (e.g., load cell sensor), and the force may be computed based on a known weight of the weight lifting device and the acceleration of the weight lifting device as determined by sensor data provided by an accelerometer, for example.

The force applied may be stored as a force curve describing the force as a function of time and may be used for computing additional exercise characteristics, such as the peak force per repetition or per set or the power exerted by the user. The power exerted by the user may be determined based the force applied to the weight lifting device, the distance over which the force was applied, and the amount of time taken to move the weight lifting device. The power characteristics may be determined for each repetition or for an entire set. For example, the power characteristic may represent the power exerted for each repetition, an average power per repetition of a set, peak power per set, cumulative power per set, and others.

Another exercise characteristic that may be computed from the sensor data is the path of motion of the weight lifting device. The path of motion may be determined from accelerometer or gyroscope sensor data, for example. The path of motion may be analyzed to determine the consistency of motion between repetitions and to analyze the user's form in performing the exercise. The path of the motion may also be used in the computation of the power exerted by the user. Additional exercise characteristics may become apparent in light of the present disclosure.

The sensor data and the exercise characteristics may be stored to a workout history 124, which keeps a running log of exercise related information. Data from the workout history 124 may be displayed to user, which allows users to track their progress manually.

Data stored to the workout history 124 may also be used by a workout designer 126 to generate suggested workout routines. For example, the workout designer 126 may design a workout that includes a specified weight, exercise type, number of repetitions, and number of sets. The workout designer 126 can use the workout history 124 to design appropriate workouts for the user based on past performance and progress. Additionally, the workout designer 126 may also provide suggestions regarding the user's form during an exercise based on analysis of motion data. For example, the motion data may indicate that the user is not forcing the weight through a full range of motion appropriate for the type of exercise, in which case the exercise designer may alert the user of this and/or reduce the amount of weight to be lifted in a suggested exercise routine.

FIG. 2 is process flow diagram of a method for operating a weight training system in accordance with embodiments of the present disclosure. The specific function blocks shown in FIG. 2 are shown as examples of the present techniques, and it will be appreciated that embodiments of the present techniques may be performed differently from what is shown in FIG. 2. For example, the blocks in FIG. 2 may be performed in an order different than presented, and some of the blocks in FIG. 2 may not be performed. The method 200 of FIG. 2 may be performed by the computing system 102, the weight lifting devices 104, or a combination thereof. The method may begin at block 202.

At block 202, sensor data is received from a sensor disposed in a weight lifting device. The sensor may be a load cell configured to generate force data describing a force exerted by a user on the weight lifting device or a component of the weight lifting device. The sensor may also be an accelerometer or gyroscope configured to generate motion data describing a motion of the weight lifting device, such a speed or acceleration of the motion, a direction of the motion, and path of the motion. Any number of sensors may be disposed in the weight lifting device, each of which may sense different types of data. The sensor data may be received at the computing device from the weight training device over a communication channel. In some embodiments, such as embodiments wherein the weight lifting device is a free weight, the sensor data may be received at the computing device from the weight lifting device wirelessly. The sensor data may also be received at a processing device of the weight training device itself

At block 204, one or more exercise characteristics are determined based on the sensor data. The exercise characteristics may be any of the exercise characteristics described above, including a power exerted by a user of the weight lifting device, a weight of the weight lifting device, a number of repetitions performed, and others. Additionally, exercise characteristics may be computed by the computing device or by a processing device of the weight lifting device. Exercise characteristics computed by a processing device of the weight lifting device may be sent to the computing device for storage and/or further processing. Other information may also be sent from the weight lifting device to the computing device, such as a unique serial number of the weight lifting device, a type of the weight lifting device, and/or a predetermined weight of the weight lifting device. Any of these values may further used in the computation of exercise characteristics. For example, the predetermined weight value of the weight lifting device, in combination with sensed motion data, can be used to compute the force and/or power exerted by the user.

At block 206, the exercise characteristics are recorded in a storage device, forming a record of the user's workout history.

At block 208, some or all of the sensor data or exercise characteristics may be displayed on a user interface display. For example, the user may request a subset of the sensor data or exercise characteristics to be displayed, and the computing device may present the requested data in form of charts, graphs, tables or any other suitable format.

At block 210, one more suggested exercises or workout routines may be presented to the user. Exercise or workout routine suggestions may be generated by the workout designer 126 of FIG. 1 based on data stored to the workout history.

FIG. 3 illustrates a diagrammatic representation of a machine in the example form of a computer system 300 within which a set of instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed. In alternative embodiments, the machine may be connected (e.g., networked) to other machines in a local area network (LAN), an intranet, an extranet, or the Internet. The machine may operate in the capacity of a server or a client machine in a client-server network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a personal computer (PC), a tablet PC, a web appliance, a server, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.

The exemplary computer system 300 includes a processing device 302, a user interface display 313, a main memory 304 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM), a static memory 306 (e.g., flash memory, static random access memory (SRAM), etc.), and a data storage device 318, which communicate with each other via a bus 330. Any of the signals provided over various buses described herein may be time multiplexed with other signals and provided over one or more common buses. Additionally, the interconnection between circuit components or blocks may be shown as buses or as single signal lines. Each of the buses may alternatively be one or more single signal lines and each of the single signal lines may alternatively be buses.

Processing device 302 represents one or more general-purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device may be complex instruction set computing (CISC) microprocessor, reduced instruction set computer (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or processor implementing other instruction sets, or processors implementing a combination of instruction sets. Processing device 302 may also be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 302 is configured to execute processing logic 326 for performing the operations and blocks discussed herein.

User interface display 313 may be used to display a user interface as described above and may also be used to display sensor data, exercise characteristics, suggested workout routines, and other information.

The data storage device 318 may include a machine-readable storage medium 328, on which is stored one or more sets of instructions 322 (e.g., software) embodying any one or more of the methodologies of functions described herein, including instructions to cause the processing device 302 to execute the data generator 122 and the workout designer 126, both of which may be included in a component referred to in FIG. 3 as a training application 332. The instructions 322 may also reside, completely or at least partially, within the main memory 304 or within the processing device 302 during execution thereof by the computer system 300; the main memory 304 and the processing device 302 also constituting machine-readable storage media. The instructions 322 may further be transmitted or received over a network 320 via the network interface device 308.

The machine-readable storage medium 328 may also be used to store instructions to perform the techniques described herein. While the machine-readable storage medium 328 is shown in an exemplary embodiment to be a single medium, the term “machine-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) that store the one or more sets of instructions. A machine-readable medium includes any mechanism for storing information in a form (e.g., software, processing application) readable by a machine (e.g., a computer). The machine-readable medium may include, but is not limited to, magnetic storage medium (e.g., floppy diskette); optical storage medium (e.g., CD-ROM); magneto-optical storage medium; read-only memory (ROM); random-access memory (RAM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; or another type of medium suitable for storing electronic instructions.

FIG. 4 is an example of a cable machine that may be included in the smart training system in accordance with some embodiments of the present disclosure. The cable machine 400 includes a cable 402 that is configured to be attached at one end to a handle 406 for engagement by the user. The cable is attached at the other end to a resistance member, which is a weight stack 404 in the depicted embodiment. As used herein the term resistance member refers to any type of component that can be used to resist the motion of user during an exercise. Resistance members may include weights as well as tension-based resistance members such as springs. The cable 402 may not be continuous and may include two or more cable segments that are spliced together at suitable locations. The cable machine 400 also includes a load cell 408 disposed in relation with the cable 402 to sense the amount of pressure, force, or weight being applied to the cable 402. For example, the load cell 408 may be disposed at fixed loading point such as a splice point between different segments of the cable as shown in FIG. 4.

The cable machine may also include a motion sensor 410 mounted to a part of the cable machine 400 that will be in motion during an exercise. For example, the motion sensor 410 may be coupled to the weight stack 404 or another component that has a fixed positional relationship relative to the weight stack 404. The motion sensor 410 may be any suitable type of motion sensor, including an accelerometer or gyroscope, for example.

FIG. 5 is an example of a barbell that may be included in the smart training system in accordance with some embodiments of the present disclosure. The barbell 500 includes a lifting handle portion 502 and two weight loaded portions 504 on which weight plates can be mounted. The barbell 500 also includes connectors 506 for connecting the lifting handle portion 502 and the weight loaded portions 504. The barbell 500 can also include one or more load cells 508 for measuring the weight of the weight loaded portions 504. The load cells 508 may be disposed anywhere that enables it to sense the load applied by the weight loaded portions 504 to the lifting handle portion 502. For example, the load cell 508 may be a sensor such as a strain gauge disposed in the connector 506 as shown in FIG. 5. Other configurations are also possible.

The barbell can also include one or more motion sensors 510 such accelerometers or gyroscopes. The motion sensors 510 may be disposed at any suitable location such as the connector 506.

FIG. 6 is an example of a dumbbell that may be included in the smart training system in accordance with some embodiments of the present disclosure. The dumbbell 600 includes a lifting handle portion 602 and a weight portion 604, which may be a fixed weight. The dumbbell 600 can also include one or more motion sensors 606 such accelerometers or gyroscopes. In this example, the motion sensor 606 is a single motion sensor inserted or threaded into one end of the dumbbell. However, other configurations are possible.

FIG. 7 is an example of a kettlebell that may be included in the smart training system in accordance with some embodiments of the present disclosure. The kettlebell 700 includes a lifting handle portion 702 and a weight portion 704, which may be a fixed weight. The kettlebell 700 can also include one or more motion sensors 706 such accelerometers or gyroscopes. In this example, the motion sensor 706 is a single motion sensor inserted or threaded into the bottom of the kettlebell 700. However, other configurations are possible.

Each of the exercise devices described in relation to FIGS. 4-7 may be used in the smart training system 100 shown in FIG. 1. Accordingly, it will be appreciated that any of the exercise devices 400, 500, 600, and 700 can be one of the exercise devices 104 shown in FIG. 1. Additionally, each of the exercise devices will be capable of being used in any of the processes described above, depending on the type of sensors and the type of electronic circuitry included therein. For example, each of the exercise devices can include a data transmitting device such as WiFi or Bluetooth transmitter for transmitting sensor data and other data to the training application 332 (FIG. 3). Any one of the exercise devices may also include additional hardware such as a processing device and/or memory as described in relation to FIG. 1. For example, the kettlebell 700 and the dumbbell 600 may include an electronic memory that stores a value indicating the fixed weight of the device, which enables it to transmit this information the training application 332. Additionally, it will be appreciated that the equipment depicted in FIGS. 4-7 are only examples, and that embodiments of the present disclosure may be implemented using any suitable piece of fitness or training equipment.

The preceding description sets forth numerous specific details such as examples of specific systems, components, methods, and so forth, in order to provide a good understanding of several embodiments of the present disclosure. It will be apparent to one skilled in the art, however, that at least some embodiments of the present disclosure may be practiced without these specific details. In other instances, well-known components or methods are not described in detail or are presented in simple block diagram format in order to avoid unnecessarily obscuring the present disclosure. Thus, the specific details set forth are merely exemplary. Particular embodiments may vary from these exemplary details and still be contemplated to be within the scope of the present disclosure.

Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiments included in at least one embodiment. Thus, the appearances of the phrase “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. In addition, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or.”

Additionally, some embodiments may be practiced in distributed computing environments where the machine-readable medium is stored on and or executed by more than one computer system. In addition, the information transferred between computer systems may either be pulled or pushed across the communication medium connecting the computer systems.

Embodiments of the claimed subject matter include, but are not limited to, various operations described herein. These operations may be performed by hardware components, software, firmware, or a combination thereof.

Although the operations of the methods herein are shown and described in a particular order, the order of the operations of each method may be altered so that certain operations may be performed in an inverse order or so that certain operation may be performed, at least in part, concurrently with other operations. In another embodiment, instructions or sub-operations of distinct operations may be in an intermittent or alternating manner.

The above description of illustrated implementations of the invention, including what is described in the Abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed. While specific implementations of, and examples for, the invention are described herein for illustrative purposes, various equivalent modifications are possible within the scope of the invention, as those skilled in the relevant art will recognize. The words “example” or “exemplary” are used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as “example” or “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs. Rather, use of the words “example” or “exemplary” is intended to present concepts in a concrete fashion. As used in this application, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or”. That is, unless specified otherwise, or clear from context, “X includes A or B” is intended to mean any of the natural inclusive permutations. That is, if X includes A; X includes B; or X includes both A and B, then “X includes A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form. Moreover, use of the term “an embodiment” or “one embodiment” or “an implementation” or “one implementation” throughout is not intended to mean the same embodiment or implementation unless described as such. Furthermore, the terms “first,” “second,” “third,” “fourth,” etc. as used herein are meant as labels to distinguish among different elements and may not necessarily have an ordinal meaning according to their numerical designation. 

What is claimed is:
 1. A weight training device, comprising: a handle; a resistance member coupled to the handle and configured to resist a motion of the handle; a sensor coupled between the handle and the resistance member and configured to collect sensor data, wherein the sensor data comprises a degree of force applied to the handle; a communication interface configured to transmit the sensor data to a remote computing device.
 2. The weight training device of claim 1, wherein the weight training device is a free weight.
 3. The weight training device of claim 1, wherein the weight training device is a barbell, wherein the handle is a central portion of the barbell, and wherein the resistance member is an outer portion of the barbell configured to support weight plates.
 4. The weight training device of claim 1, wherein the handle is coupled to the resistance member by a cable, and wherein the sensor is configured to measure a degree of force applied to the handle through the cable.
 5. The weight training device of claim 1, further comprising a motion sensor to sense motion data comprising motion characteristics of the handle, wherein the communication interface is configured to transmit the motion data to the remote computing device.
 6. The weight training device of claim 5, wherein the motion data comprises at least one of a speed of the motion, a direction of the motion, or a path of the motion.
 7. The weight training device of claim 1, further comprising a processing device to receive the sensor data, compute an exercise characteristic based on the sensor data and transmit the exercise characteristic to the remote computing device.
 8. The weight training device of claim 7, wherein the exercise characteristic comprises a power exerted to move the handle.
 9. The weight training device of claim 8, wherein the power exerted comprises at least one of power over time, peak power per repetition, or peak power per set.
 10. The weight training device of claim 1, wherein the exercise characteristic comprises a weight applied to the handle by the resistance member.
 11. A weight training device, comprising: a handle; a resistance member coupled to the handle and configured to resist a motion of the handle; a motion sensor to sense motion data comprising motion characteristics of the handle; and a communication interface configured to transmit the motion data to a remote computing device.
 12. The weight training device of claim 11, wherein the motion data comprises at least one of a speed of the motion, a direction of the motion, or a path of the motion.
 13. The weight training device of claim 11, further comprising a processing device to receive the motion data, compute an exercise characteristic based on the sensor data and transmit the exercise characteristic to the remote computing device.
 14. The weight training device of claim 13, wherein the additional exercise characteristic comprises a power exerted to move the handle.
 15. The weight training device of claim 14, wherein the power exerted comprises at least one of power over time, peak power per repetition, or peak power per set.
 16. The weight training device of claim 11, further comprising an electronic memory, wherein a weight of the weight training device is a fixed weight value and the fixed weight value is stored to the electronic memory.
 17. The weight training device of claim 11, further comprising a force sensor coupled between the handle and the resistance member, the force sensor to sense a degree of force applied to the handle.
 18. The weight training device of claim 17, wherein a weight applied to the handle by the resistance member is determined based on the degree of force applied to the handle as measured by the force sensor.
 19. The weight training device of claim 17, wherein the degree of force applied to the handle and the motion data are used to compute a power exerted to move the handle.
 20. The weight training device of claim 17, wherein the communication interface is configured to transmit the degree of force and the motion data to the remote computing device. 